package cn.shujuhai.cms.service;

import cn.shujuhai.cms.domain.EmailRecord;
import cn.shujuhai.common.pluging.data.ResultVo;
import com.baomidou.mybatisplus.extension.service.IService;
import com.github.pagehelper.PageInfo;
import org.springframework.web.multipart.MultipartFile;

/**
 * @author niuyahu
 * @description 针对表【email_record(邮件记录表，用于存储邮件的基本信息、状态及内容)】的数据库操作Service
 * @createDate 2024-12-24 14:59:02
 */
public interface EmailRecordService extends IService<EmailRecord> {

    ResultVo<PageInfo<EmailRecord>> getEmailPageInfo(String subject, Integer page, Integer pageSize);

    ResultVo<?> add(EmailRecord emailRecord);

    ResultVo<EmailRecord> edit(EmailRecord emailRecord);

    ResultVo<EmailRecord> removeId(Integer id);

    ResultVo<?> uploadAttachment(MultipartFile file);

    ResultVo<?> sending(Long id, String sendTime);

    ResultVo<?> getEmailLogByEmailId(Integer page, Integer pageSize, Long emailId, Integer status, String email);

    void doSendEmailSchedule();

    ResultVo<?> resend(Long id, String sendTime);

    ResultVo<?> getEmailById(Long id);

}
